--- /dev/null
+--- misc/boost_1_44_0/boost/smart_ptr/shared_ptr.hpp 2009-12-14 18:44:19.000000000 +0100
++++ misc/build/boost_1_44_0/boost/smart_ptr/shared_ptr.hpp 2012-03-28 08:32:46.772493003 +0200
+@@ -207,7 +207,17 @@
+ boost::detail::sp_enable_shared_from_this( this, p, p );
+ }
+
+-// generated copy constructor, destructor are fine
++// generated copy constructor, destructor are fine...
++
++#if defined( BOOST_HAS_RVALUE_REFS )
++
++// ... except in C++0x, move disables the implicit copy
++
++ shared_ptr( shared_ptr const & r ): px( r.px ), pn( r.pn ) // never throws
++ {
++ }
++
++#endif
+
+ template<class Y>
+ explicit shared_ptr(weak_ptr<Y> const & r): pn(r.pn) // may throw
+--- misc/boost_1_44_0/boost/smart_ptr/weak_ptr.hpp 2009-12-14 18:44:19.000000000 +0100
++++ misc/build/boost_1_44_0/boost/smart_ptr/weak_ptr.hpp 2012-03-28 10:31:57.607462325 +0200
+@@ -40,8 +40,24 @@
+ {
+ }
+
+-// generated copy constructor, assignment, destructor are fine
++// generated copy constructor, assignment, destructor are fine...
+
++#if defined( BOOST_HAS_RVALUE_REFS )
++
++// ... except in C++0x, move disables the implicit copy
++
++ weak_ptr( weak_ptr const & r ): px( r.px ), pn( r.pn ) // never throws
++ {
++ }
++
++ weak_ptr & operator=( weak_ptr const & r ) // never throws
++ {
++ px = r.px;
++ pn = r.pn;
++ return *this;
++ }
++
++#endif
+
+ //
+ // The "obvious" converting constructor implementation:
PATCH_FILES+=boost.windows.patch
+# Backporting fixes for the GCC 4.7 -std=c++11 mode from Boost 1.48.0:
+PATCH_FILES += boost_1_44_0-gcc4.7.patch
+
ADDITIONAL_FILES= \
libs/thread/src/win32/makefile.mk \
libs/date_time/src/gregorian/makefile.mk
TimeValue aTimeVal_after;
osl_getSystemTime( &aTimeVal_after );
sal_Int32 nSec = aTimeVal_after.Seconds - aTimeVal_befor.Seconds;
- printf("nSec is %"SAL_PRIdINT32"\n", nSec);
+ printf("nSec is %" SAL_PRIdINT32 "\n", nSec);
myThread.join();
TARFILE_MD5=ea91f2fb4212a21d708aced277e6e85a
PATCH_FILES=$(TARFILE_NAME).patch
+# At least GCC 4.7 treats more correctly now the type of enumerators prior to
+# the closing brace of the enum-specifier (see [dcl.enum] in the C++ 2003
+# Standard), leading to "comparison between <enum1> and <enum2> [-Werror=enum-
+# compare]" and "enumeral mismatch in conditional expression [-Werror]"
+# warnings:
+PATCH_FILES += vigra1.4.0-enumwarn.patch
+
CONFIGURE_DIR=
CONFIGURE_ACTION=
--- /dev/null
+--- misc/vigra1.4.0/include/vigra/sized_int.hxx 2012-03-28 13:36:02.743956393 +0200
++++ misc/build/vigra1.4.0/include/vigra/sized_int.hxx 2012-03-28 13:35:44.956057143 +0200
+@@ -80,8 +80,8 @@
+ template<class LIST>
+ struct SelectBiggestIntegerType
+ {
+- enum { cursize = LIST::size,
+- nextsize = SelectBiggestIntegerType<typename LIST::next>::size,
++ enum { cursize = static_cast< int >(LIST::size),
++ nextsize = static_cast< int >(SelectBiggestIntegerType<typename LIST::next>::size),
+ size = (cursize < nextsize) ? nextsize : cursize };
+ typedef typename
+ IfBool<(cursize < nextsize),